package _2_2基础算法;

import java.util.Scanner;

public class _549扫雷 {
	public static void main(String[] args) {
		
		Scanner scan = new Scanner(System.in);
		int n = scan.nextInt();
		int m = scan.nextInt();
		int arr[][] = new int[n][m];
		for(int i = 0;i < n;i++) {
			for(int j = 0;j < m;j++) {
				arr[i][j] = scan.nextInt();
				// 输入的是1则转换成9代表地雷
				if(arr[i][j] == 1) {
					arr[i][j] = 9;
				}
			}
		}
		
		for(int i = 0;i < n;i++) {
			for(int j = 0;j < m;j++) {
				if(arr[i][j] == 9) {
					continue;
				}
				// 左上
				if(i-1>=0 && j-1>=0) 
					if(arr[i-1][j-1]==9) arr[i][j]++;
				// 上
				if(i-1>=0)
					if(arr[i-1][j]==9) arr[i][j]++;
				// 左
				if(j-1>=0)
					if(arr[i][j-1]==9) arr[i][j]++;
				// 右下
				if(i+1<n && j+1<m)
					if(arr[i+1][j+1]==9) arr[i][j]++;
				// 下
				if(i+1<n)
					if(arr[i+1][j]==9) arr[i][j]++;
				// 右
				if(j+1<m)
					if(arr[i][j+1]==9) arr[i][j]++;
				// 左下
				if(i+1<n && j-1>=0)
					if(arr[i+1][j-1]==9) arr[i][j]++;
				// 右上
				if(i-1>=0 && j+1<m) {
					if(arr[i-1][j+1]==9) arr[i][j]++;
				}
			}
		}
		
		
		// 输出
		for(int i = 0;i < n;i++) {
			for(int j = 0;j < m;j++) {
				System.out.print(arr[i][j] + " ");;
			}
			System.out.println();
		}
		
		scan.close();
	}
}
